<template>
	<view class="layout">
		<view class="navBar">
			<view class="statusBar" :style="{height:getStatusBarHeight()+'px'}"></view>
			<view class="titleBar" v-if="showTitle" :style="{height:getTitleBarHeight()+'px'}">
				<view class="title">{{title}}</view>
				<view class="search" v-if="showSearch">
					<uni-icons class="icon" type="search" color="#888" size="18"></uni-icons>
					<text class="text">搜索</text>
				</view>
			</view>	
		</view>
		<view class="fill" :style="{height:getNavBarHeight() +'px'}"></view>
	</view>
</template>

<script setup>
	import { ref } from 'vue';
	import {getStatusBarHeight, getTitleBarHeight, getNavBarHeight} from '../../utils/systemInfo.js';
	defineProps(
		{
			title:String,
			showTitle: {
				type: Boolean,
				default: true
			},
			showSearch: {
				type: Boolean,
				default: true
			},
		}
	)
</script>

<style lang="scss" scoped>
.layout {
	.navBar{
		padding-left: 30rpx;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		background: 
		linear-gradient(to right, #beecd8 20%, #f4e2d8);
		z-index: 10;
		.statusBar {
			
		}
		.titleBar {
			display: flex;
			align-items: center;
			
			.title {
				font-size: 22px;
				font-weight: 700;
				color: $text-font-color-1;
			}
			.search {
				width: 220rpx;
				height: 50rpx;
				border-radius: 60rpx;
				background: rgba(255, 255, 255, 0.4);
				border: 1px solid #fff;
				margin-left: 30rpx;
				color: #999;
				font-size: 28rpx;
				display: flex;
				align-items: center;
				.icon {
					margin-left: 5rpx;
				}
				.text {
					padding-left: 10rpx;
				}
			}
		}
	}
	.fill {}
}
</style>